package com.cljh.mapper;

import com.cljh.bean.Distinct;
import com.cljh.bean.Product;
import com.cljh.controller.page.ProductPageBean;
import org.apache.ibatis.annotations.*;


import java.util.List;

@Mapper
public interface ProductMapper {

    List<Product> selectAllByCondition(@Param("begin") Integer begin, @Param("size") Integer size, @Param("product") ProductPageBean product);
    /**
     * TODO
     *
     * @param product
     * @return
     */
    int save(@Param("product") Product product);

    @Delete("delete from mall2.product where id=#{id};")
    int delete(Integer id);

    /**
     * TODO ProductPageBean
     *
     * @param product
     * @return
     */
    int update(@Param("product") ProductPageBean product);


    int selectByCount(@Param("product") ProductPageBean product);

    int deleteByIds(@Param("ids") List<Integer> ids);

    Product selectById(Integer id);


    //    @Select("select * from mall2.product;")
    List<Product> ProductList();

    List<Product> ProductList1();

    int saveAll(@Param("products") List<Product> products);


    List<Product> selectByUser(Integer id);

//    List<Product> selectByDistinct(@Param("begin") Integer begin,
//                                   @Param("size") Integer size,
//                                   @Param("productName") String productName,
//                                   @Param("types") String types);

    List<Product> selectByShowId(Integer id);

    int upd(@Param("product")Product product);
}
